.NET изначально поддерживает UUID v4 через Guid.NewGuid().
При этом начиная с предварительной версии 7, появилась поддержка UUID версии 7. 📌 UUID v7
Так как GUID является альтернативным названием для UUID, новый API находится в пространстве имен System.Guid:
var guid = Guid.CreateVersion7(); var guidWithTimestamp = Guid.CreateVersion7(DateTimeOffset.UtcNow);
Главным преимуществом является включение метки времени в UUID. Это дает 122 бита энтропии, включая 6 бит для версии и варианта где-то посередине.
Главное преимущество заключается в том, что вы можете сортировать UUID по времени их создания, что делает их более подходящими для баз данных по сравнению с UUID v4.
📌 Контроль метки времени
Поскольку метод ожидает DateTimeOffset, вызывающая функция может использовать TimeProvider для контроля UtcNow:
var uuid = Guid.CreateVersion7(timeProvider.GetUtcNow());
timeProvider может быть получен через DI контейнер и подделан в тестовых сценариях.
.NET изначально поддерживает UUID v4 через Guid.NewGuid().
При этом начиная с предварительной версии 7, появилась поддержка UUID версии 7. 📌 UUID v7
Так как GUID является альтернативным названием для UUID, новый API находится в пространстве имен System.Guid:
var guid = Guid.CreateVersion7(); var guidWithTimestamp = Guid.CreateVersion7(DateTimeOffset.UtcNow);
Главным преимуществом является включение метки времени в UUID. Это дает 122 бита энтропии, включая 6 бит для версии и варианта где-то посередине.
Главное преимущество заключается в том, что вы можете сортировать UUID по времени их создания, что делает их более подходящими для баз данных по сравнению с UUID v4.
📌 Контроль метки времени
Поскольку метод ожидает DateTimeOffset, вызывающая функция может использовать TimeProvider для контроля UtcNow:
var uuid = Guid.CreateVersion7(timeProvider.GetUtcNow());
timeProvider может быть получен через DI контейнер и подделан в тестовых сценариях.
The cloud-based messaging platform is also adding Anonymous Group Admins feature. As per Telegram, this feature is being introduced for safer protests. As per the Telegram blog post, users can “Toggle Remain Anonymous in Admin rights to enable Batman mode. The anonymized admin will be hidden in the list of group members, and their messages in the chat will be signed with the group name, similar to channel posts.”
That strategy is the acquisition of a value-priced company by a growth company. Using the growth company's higher-priced stock for the acquisition can produce outsized revenue and earnings growth. Even better is the use of cash, particularly in a growth period when financial aggressiveness is accepted and even positively viewed.he key public rationale behind this strategy is synergy - the 1+1=3 view. In many cases, synergy does occur and is valuable. However, in other cases, particularly as the strategy gains popularity, it doesn't. Joining two different organizations, workforces and cultures is a challenge. Simply putting two separate organizations together necessarily creates disruptions and conflicts that can undermine both operations.